package com.wfy.orchestra.dispatch

import com.wfy.orchestra.thread.ITaskExecutor

/**
 * @author : wangfengyuan
 * e-mail  : 446950883@qq.com
 * time    : 2025/3/20
 * desc    :
 * version : 1.0
 */
interface ITask {
    val id: String

    //优先级属性
    var priority: Int

    @Throws(Exception::class)
    fun execute()
    fun getExecutor(): ITaskExecutor? {
        return null // 默认使用TaskGraph的线程池
    }

    //生命周期回调（可选）
    fun onCancelled() {}      // 任务被取消时回调
    fun onPaused() {}         // 任务暂停时回调（如切到后台）
    fun onResumed() {}        // 任务恢复时回调
}